草庐IT

c++ - 指针初始化

全部标签

arrays - 在 GoLang 和 Rust 中初始化字符串数组

我想初始化一个二维数组,其中内部数组的每个成员都包含一个由1000个x组成的字符串。像这样的东西:vardata=[num_rows][num_cols]string("x....x(upto1000)")但是所有的谷歌搜索都是徒劳的。在C++中,我可以实现类似的事情:vector>data(num_rows,vector(num_cols,string("x",1000)));在Ruby中是这样的:Array.new(num_rows){Array.new(num_cols){"x"*1000}}想在go中实现类似的结果,但我找不到任何文档来填充字符串和初始化二维数组。另请注意,我想

go - 如何解析变量的副本而不是指针?

在下面的代码片段中,我将http响应主体'b'解析为funcparseGoQuery,第一次没问题,但是当我在main()中第二次这样做时,它显示funcparseGoQuery中的响应'b'为0。我想我传递了变量'b'的副本,而不是指针,我很困惑......请指教resp,_:=client.Get(URL)b:=resp.Bodydeferb.Close()//closeBodywhenthefunctionreturnsparseGoQuery("tag1",b)//bisnot0asexpected,goodparseGoQuery("tag2",b)//bis0!!!???这

go - 如何在 switch 语句中先声明结构然后再初始化它?

关闭。这个问题是notreproducibleorwascausedbytypos。它目前不接受答案。这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能在这里出现,但这个问题的解决方式不太可能帮助future的读者。关闭2年前。on-topic我想先声明一个结构,然后在switch语句中初始化它。到目前为止我编写的代码显示Improvethisquestion错误。但是,我认为问题与我的情况有所不同,并且与声明范围有关。有人可以帮我使下面的代码工作吗?Car.gopackagemainimport"fmt"import"strconv"typeCarstruct{Name

带指针的 Go 工厂方法多态性

typeFoointerface{FooMethod()}typeBarFoostruct{}func(f*BarFoo)FooMethod(){}funcNewBarFoo()*Foo{return&BarFoo{}}错误:不能使用“&BarFoo{}”(类型*BarFoo)作为类型*Foo为什么我会收到此类代码的编译错误?多态性是否适用于指针?顺便说一句,这段代码没问题funcNewBarFoo()Foo{return&BarFoo{}} 最佳答案 您只需将函数签名更改为funcNewBarFoo()Foo{return&Bar

pointers - 指针 slice 的指针在制作时 panic

关闭。这个问题是notreproducibleorwascausedbytypos.它目前不接受答案。这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助future的读者。关闭3年前。Improvethisquestion我有以下代码:varANIMATIONS*[]*SDL.Animable....funcmain(){*ANIMATIONS=make([]*SDL.Animable,0,100)但是运行的时候会出现panic。正确的初始化方法是什么?错误:panic:runtimeerror:invalidmem

pointers - golang 具有指针的指针或指针的引用功能?

大家好Golang中的每个人,如果您需要更改指针(更改指针指向的位置而不是更改此指针指向的值),您会怎么做?我知道在C++中使用引用非常简单,比如“voidmyFunc(Type*&ptr){ptr=anotherPointer;}intmain{Type*ptr=&someValue;myFunc(ptr);//ptrismoved}或者等效地在C中,使用指针的指针:voidmyFunc(Type**ptrsptr){*ptrsptr=anotherPointer;}intmain{Type*ptr=&someValue;myFunc(&ptr);//ptrismoved}我想知道G

go - 如何将一个指针设置为乘法函数?

这个问题在这里已经有了答案:nonewvariablesonleftsideof:=(4个答案)关闭6年前。如何将一个指针设置为乘法函数?packagemainimport"fmt"typeCubestruct{uint}func(h*Cube)space()int{returnh.u*h.u*h.u}funcmain(){h:=Cube{u:10,}fmt.Println(h.space())h:=Cube{u:100,}fmt.Println(h.space())}println的第一个请求返回1000,但是第二个println出错了,告诉:=的左侧没有新变量但我希望指针使用所有相

methods - 在 golang 中,如何访问采用指针接收器且也在不同包中的方法?

packagetestsimport("testing""strconv""dir/model")typeTestStructstruct{IDintastringbstringcstringdstringacbooladbool}funcTestUpdate(t*testing.T){t.Log("Updating")cur:=TestStruct{i,a,b,c,d,true,true}err:=cur.model.Update(a,b,c,d,true,true)}在上面的代码块中,我试图调用一个方法,该方法采用接收者指针并且位于包“model”中。编译器错误是:引用未定义的字段

image - Go GC 似乎没有收集我未引用的图像加载指针?

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭4年前。Improvethisquestion我正在使用OpenGL使用Go开发一个项目,并且拥有通过go/image库加载图像文件的代码。这个函数没有留下永久指针,然后我离开了函数的范围。我希望这段内存在下一个GC周期中被清除,但它似乎没有。我希望了解go的人能帮我看看为什么图像没有被清除。代码要点:https://gist.github.com/gjh33/62a75ccde6a7d849311804d31d7ee9ff不调用此方法时,内

去全局变量初始化

加载文件范围全局变量配置的问题。主要方法中的配置设置和加载配置值funcmain(){iferr:=config.LoadConfig();err!=nil{logrus.Info("Unabletoreadconfig:")os.Exit(-1)}fmt.Println(config.GetConfig().Value)//printthecorrectvalueservice.Test()//prints0}我的配置设置。配置.govarappConfigAppConfigfuncLoadConfig()error{//loadsconfigappConfig=....}funcG